﻿using System.Collections.Generic;

namespace awsomeSyntezator
{
    public class Options
    {
    	public static bool changed = true;

		public static int rate; // hz
		public static int time; // ms
    	public static int freq = 250;
        public static int samples
        {
            get
            {
                return (int)(rate*time/1000.0);
            }
        }

        public static double step;

        public static bool live; // grać w locie czy też odtwarzać wcześniej wygenerowane dźwięki

		// Pipeline Generation

        public static int defaultOscilator;
    	public static List<int> harmonics = new List<int>();

		//envelope
    	public static bool envelope = false;
    	public static bool fadeInOut = false; //false - fadeIn, true, fadeOut
    	public static int envelopeStrengh = 1;
        public static int maxEnvelopeStrengh = 5;

    	public static bool vibrato = false;
        public static int vibratoFrequency = 1;
    	public static int vibratoStrengh = 1;
		
		//filter
		public static bool filter1 = false;
		public static bool filter2 = false;
		public static bool filter3 = false;

		public static float filter1freq = 0;
		public static float filter2freq = 0;
		public static float filter3freq = 0;

		public static int filter1resonance= 0;
		public static int filter2resonance = 0;
		public static int filter3resonance = 0;

    	public static int noiseDensity = 10;
		public static int effectResonance = 10;
		public static int noiseEffectCutOffFrequency = 10;



    }
}
